package com.budwk.app.sqfwV2.service;

import com.budwk.app.sqfw.models.Sqfw_completeflow;
import com.budwk.app.sqfw.models.Sqfw_formSummary_new;
import com.budwk.app.sqfw.models.Sqfw_servicerecord;
import com.budwk.app.sqfw.vo.GenerateExcelUrlVO;
import com.budwk.app.sqfwDoc.dto.TemplateCodeUpdateDTO;
import com.budwk.app.sqfwV2.dto.dto.dayingRoad.DownExcelLedgerReqVo;
import com.budwk.app.sqfwV2.dto.dto.dayingRoad.DownFileTypesResVo;
import com.budwk.app.sqfwV2.dto.vo.SummaryQueryReqVo;
import com.budwk.starter.common.page.Pagination;
import com.budwk.starter.common.result.Result;
import com.budwk.starter.database.service.BaseService;

import java.util.List;

public interface SummarySafetyService  extends BaseService<Sqfw_formSummary_new> {
    Sqfw_formSummary_new submitData(TemplateCodeUpdateDTO dto);

    Result<?> reGeneratePDF(String sqfwFlowId, String source);

    Result<List<GenerateExcelUrlVO>> downloadFile(DownExcelLedgerReqVo reqVo);

    Result<Sqfw_formSummary_new> getSummaryDetail(String summaryId);

    Result<?> listByConditionKey(String fillType, String address, String placeName);

    Result<?> listSummaryByPage(SummaryQueryReqVo dto);

    void deleteData(String summaryId);

    Result<Pagination> generateFile(SummaryQueryReqVo reqVo);

    Result<DownFileTypesResVo> generateDetailFile(SummaryQueryReqVo dto);

    Result<DownFileTypesResVo> downTemplate(DownExcelLedgerReqVo dto);

    Sqfw_servicerecord queryCurrentTask(String templateFlag, String type);

    Pagination listCurrentTask(SummaryQueryReqVo reqVo);

    Sqfw_completeflow getCompleteDetail(String completeId);

    Sqfw_formSummary_new updateSummaryData(TemplateCodeUpdateDTO dto);

    Result<Sqfw_formSummary_new> queryCurrentShopLastestData(String shopId, String type);
}
